<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // 正则表达式的方法  => 官方给定的方法
    // 语法 正则.方法();

    // 属性:
    // lastIndex  用于记录查询开始的位置(默认:0)
    // source     表达式的内容(字符串)
    // flags      修饰符的内容(字符串)
    // ignoreCase  是否忽略大小写
    // global      是否全局匹配


    // 方法:
    // test() 用既定的规则检索字符串,判断字符串中是否存在符合规则的某个或某段字符
    // 返回值: 存在=>true  不存在=>false

    // exec() 用既定的规则检索字符串,将符合规则的内容提取出来放到数组中
    // 返回值: 存在 => []  不存在 => null;


    // 属性
    var reg = /day/ig;
    console.log(reg, typeof reg);
    console.dir(reg);


    // var str = "good good study , Day dAy up";
    // var reg = /day/;  // day
    // var reg = /day/i;  // D|d  A|a  Y|y => 包含匹配模式中的一种即可
    // console.log(reg.test(str));

    // test() 方法添加修饰符g => 全局匹配
    // 流程: 默认从下标为0(lastIndex=0)的位置开始匹配,如果存在符合规则的字符/字符串,则返回true,并记录下次查询开始的位置(lastIndex),下次查询从当前位置开始,继续查找,依次类推,最终查不到就返回false,查询的下标会重置为0

    // var str = "good good study , Day dAy up";
    // var reg = /day/ig;
    // console.log(reg.lastIndex, reg.test(str));
    // console.log(reg.lastIndex, reg.test(str));
    // console.log(reg.lastIndex, reg.test(str));

    // console.log(reg.lastIndex, reg.test(str));
    // console.log(reg.lastIndex, reg.test(str));
    // console.log(reg.lastIndex, reg.test(str));


    // exec()

    // var str = "good good study , Day dAy up";
    // var reg = /day/;  // day
    // var reg = /day/i;  // D|d  A|a  Y|y => 包含匹配模式中的一种即可
    // console.log(reg.exec(str));


    // exec() 方法添加修饰符g => 全局匹配
    // 流程: 默认从下标为0(lastIndex=0)的位置开始匹配,如果存在符合规则的字符/字符串,则将匹配的字符/字符串提取出来放到数组中,并记录下次查询开始的位置(lastIndex),下次查询从当前位置开始,继续查找,依次类推,最终查不到就返回null,查询的下标会重置为0

    // var str = "good good study , Day dAy up";
    // var reg = /day/ig;
    // console.log(reg.lastIndex, reg.exec(str));
    // console.log(reg.lastIndex, reg.exec(str));
    // console.log(reg.lastIndex, reg.exec(str));

    // console.log(reg.lastIndex, reg.exec(str));
    // console.log(reg.lastIndex, reg.exec(str));
    // console.log(reg.lastIndex, reg.exec(str));





</script>

</html>